package com.cowmooed.dto;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor // Jackson反序列化需要
@JsonIgnoreProperties(ignoreUnknown = true)
public class SmartFormRecommendationDTO {
    private List<FormOptionDTO> faceOptions;
    private List<FormOptionDTO> generateTypeOptions;
    private TaskVersionRecommendation taskVersionRecommendation;
    private EnablePBRRecommendation enablePBRRecommendation;

    @Data
    @Builder
    @AllArgsConstructor
    @NoArgsConstructor // Jackson反序列化需要
    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class TaskVersionRecommendation {
        private String recommended; // pro, rapid
        private String reason;
    }

    @Data
    @Builder
    @AllArgsConstructor
    @NoArgsConstructor // Jackson反序列化需要
    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class EnablePBRRecommendation {
        private Boolean recommended;
        private String reason;
    }
}